<?php

class ArchivosXML extends CombinadorFactory {
	private $xml;
	public function ArchivosXML($enlaceArchivo){
		parent::CombinadorFactory();
		$this->enlaceArchivo=$enlaceArchivo;
	}
	
	public function generarArchivoInsumo($campos){
		global  $ruta_raiz;
		if (!$campos || ! is_array($campos) || count($campos)<3) 
			 	throw new Exception("no hay campos para el Insumo o son insuficientes");
		 foreach ($campos as $clave=>$valor){
					$this->valores[]=str_replace(array("<",">"),array("'","'") ,$valor);
		 			$this->variables[]=$clave;
		 		}
	}
	protected function combinar(){
		$this->setArchivoCombinar();
		$this->xml = new AdminArchivosXML();
        	$archivoACargar = str_replace('../','',$this->enlaceArchivo);
        	
        	$nombreArchivo=substr($this->archivoCombinador,strrpos($this->archivoCombinador,"/")+1);
        	
            $xml->cargarXML( $archivoACargar, $nombreArchivo );
            $xml->setWorkDir($this->cache);
            $accion = $xml->abrirXML();
            $xml->cargarContenido();
            $xml->setVariable( $this->variables, $this->valores);
		 	}
	protected function salvar(){
			if($this->vistaPrevia){
                                $linkarchivo_grabar = str_replace("bodega","",$this->enlaceTemporal);
                                $linkarchivo_grabar = str_replace("./","",$linkarchivo_grabar);
                        }
			
            $xml->salvarCambios( null, $linkarchivo_grabar );	
		return $linkarchivo_grabar;
	}
}
?>                